Skip to content

Reorganized commands#6353

Open
ArbaazKhan1 wants to merge 5 commits into
apache:mainfrom
ArbaazKhan1:accumulo-6140
Open

Reorganized commands#6353
ArbaazKhan1 wants to merge 5 commits into
apache:mainfrom
ArbaazKhan1:accumulo-6140

Conversation

@ArbaazKhan1
Copy link
Copy Markdown
Contributor

@ArbaazKhan1 ArbaazKhan1 commented Apr 30, 2026

Closes issue #6140

Clarified confusion between different usages of help and added -? as an alias for --help

Added new Zookeeper command group (zk) and consolidated zoo related sub-commands into it:

  • dump-zoo
  • restore-zookeeper
  • zoo-info-viewer
  • zoo-prop-editor
  • zoo-zap
  • zk-cli

Added new Check command group and consolidated troubleshooting/ verification commands into it:

  • check
  • missing-files
  • verify-tablet-assignment

Comment thread start/src/main/java/org/apache/accumulo/start/spi/CommandGroups.java Outdated
Copy link
Copy Markdown
Member

@ctubbsii ctubbsii left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some of the subcommand names can be further updated to drop "zk" or "zoo" from their names, so instead of "bin/accumulo zk zk-cli", it is just "bin/accumulo zk cli". Also "check" subcommand can be renamed to "system", so it is "check system" instead of "check check".

Also, can you screenshot (or copy/paste into a ``` codeblock) the output of bin/accumulo help after these changes? It helps show the overall user experience improvement for the command renames.

Also, in the description/title/class names, "ZooKeeper" should be spelled with a capital K whenever possible, for consistent branding.

@ArbaazKhan1
Copy link
Copy Markdown
Contributor Author

Output of accumulo --help:

Usage one of:
    accumulo --help | -help | -h | -?
        Prints this help

    accumulo classpath
        Prints the classpath for the accumulo script

    accumulo jshell [ARG]...
        Starts a Java JShell session for use with an Accumulo instance

    accumulo className [ARG]...
        Executes a Java class passing the provided arguments

    accumulo <command> <subcommand> --help | [ARG]...
        Provides a common execution environment to run various Accumulo related commands and subcommands.
        Client commands support a shorter command structure where the command does not have to be specified,
        'accumulo shell' instead of 'accumulo client shell', for example. Commands other than 'client'
        require access to the accumulo.properties file for the instance.

Client Commands (accumulo <command>):
  create-token                   Creates authentication token
  help                           Prints usage
  shell                          Runs Accumulo shell
  version                        Prints Accumulo version

Check Commands (accumulo check <command>):
  missing-files                  Checks file references in metadata and user tables, optionally removes errant file references
  system                         Performs checks for problems in Accumulo.
  verify-tablet-assignments      Verify all Tablets are assigned to tablet servers

Compaction Commands (accumulo compact <command>):
  cancel                         Cancels a compaction
  find-tmp-files                 Finds and optionally deletes compaction tmp files.
  list                           List running compactions

Configuration Commands (accumulo conf <command>):
  check-accumulo-properties      Checks the provided Accumulo configuration file for errors
  check-compaction-config        Verifies compaction config within a given file
  create-autocomplete-script     Generates a bash completion script
  dump-config                    Prints out non-default configuration settings.
  export                         Exports all accumulo configuration to yaml with well defined sort order to support diff.
  import                         Imports accumulo properties from a yaml file.

File Commands (accumulo file <command>):
  create-empty                   Creates empty RFiles (RF) or empty write-ahead log (WAL) files for emergency recovery
  generate-splits                Generate split points from a set of 1 or more rfiles
  rfile-info                     Prints rfile info
  split-large                    Splits an RFile into large and small key/value files
  wal-info                       Prints WAL Info

Instance Commands (accumulo inst <command>):
  change-secret                  Changes the unique secret given to the instance that all servers must know.
  delete-instance                Deletes specific instance name or id from zookeeper or cleans up all old instances.
  fate                           Operations performed on the Manager FaTE system.
  info                           Prints Accumulo cluster info
  init                           Initializes Accumulo
  list-instances                 List Accumulo instances in zookeeper
  list-volumes                   list volumes currently in use
  locks                          Prints server locks (Deprecated - use service-status and stop commands)
  login-info                     Prints Accumulo login info
  remove-scan-server-references  Removes ScanServer references in metadata table for servers not running
  service-status                 Shows status of Accumulo server processes
  upgrade                        utility used to perform various upgrade steps for an Accumulo instance.

Process Commands (accumulo proc <command>):
  compactor                      Runs Accumulo Compactor
  gc                             Runs Accumulo Garbage Collector
  list-compactors                Displays compactors grouped by resource group
  manager                        Runs Accumulo Manager
  minicluster                    Runs Accumulo MiniCluster
  monitor                        Runs Accumulo Monitor
  ping                           Ping tablet servers.  If no arguments, pings all.
  sserver                        Runs Accumulo Scan Server
  stop-all                       Stop all tablet servers and the manager.
  stop-manager                   Stop the manager.
  stop-servers                   Stops the servers at the supplied addresses.
  tserver                        Runs Accumulo Tablet Server

Table Commands (accumulo table <command>):
  find-offline-tablets           Prints information about offline tablets
  find-online-ondemand-tablets   Lists the OnDemand tablets that are currently hosted

ZooKeeper Commands (accumulo zk <command>):
  cli                            Starts an Apache ZooKeeper client rooted at the current instance.
  dump                           Writes ZooKeeper data as human readable or XML to a file.
  info-viewer                    view Accumulo instance and property information stored in ZooKeeper
  prop-editor                    Emergency tool to modify properties stored in ZooKeeper without a cluster. Prefer using the shell if it is available
  restore                        Restore ZooKeeper data from a file.
  zap                            Utility for zapping ZooKeeper locks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Accumulo command re-org follow-ons

3 participants